package com.mall.goods.service;

import com.github.pagehelper.PageInfo;
import com.mall.pojo.Brand;
import com.mall.pojo.Spec;

import java.util.List;

/**
 * @author: bamboo_shoot on 20/5/20
 * @description: -这个是dao接口
 */

public interface BrandService {
    /**
     * @param: []
     * @return: java.util.List<com.mall.pojo.Brand>
     * @description: _查询所有品牌
     */
    List<Brand> findAll();

    /**
     * @param: [id]
     * @return: com.mall.pojo.Brand
     * @description: _根据id查询brand
     */
    Brand findBrandById(Integer id);

    /**
     * 新增品牌
     *
     * @param: [brand]
     * @return: void
     */
    void add(Brand brand);

    /**
     * 修改品牌
     *
     * @param: [brand]
     * @return: void
     */
    void updateBrand(Brand brand);

    /**
     * 通过id删除
     *
     * @param: [id]
     * @return: void
     */
    void deleteBrandById(Integer id);

    /**
     * 根据条件查询品牌
     *
     * @param: [brand]
     * @return: java.util.List<com.mall.pojo.Brand>
     */
    List<Brand> findBrandListByCondition(Brand brand);

    /**
     * 分页查询品牌
     *
     * @param: [page, size]
     * @return: com.mall.entity.PageResult<com.mall.pojo.Brand>
     */
    PageInfo<Brand> searchBrandsByPagination(Brand brand, int page, int size);

    /**
     * 根据商品分类名称查询品牌列表
     *
     * @param: [category]分类名称
     * @return: java.util.List<com.mall.pojo.Brand>
     */
    List<Brand> searchBrandByCategoryName(String category);

    /**
     * 根据分类名查询规格
     *
     * @param: [category]
     * @return: java.util.List<com.mall.pojo.Spec>
     */
    List<Spec> searchSpecificationByCategoryName(String category);
}
